/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package MortgageCore;
import simframe.simulation.*;

/**
 *
 * @author karakots
 */
public interface iBuyerSeller extends SimActor {

    void houseFound(House house);
    void buyerFound(iBuyerSeller buyer);
    void payCashForHouse(iBuyerSeller buyer, House house, double payment);
    void hereIsTitle(House house, Title title);
    void mortgagePreapproval(Mortgage mortgage);
    // keep mortgageFunded as an action, because it generates buying a house,
    // which interacts with other objects
    void mortgagePaidInFull(Mortgage m);
    Action mortgageFunded(Mortgage mortgage);
    void preAppMortgageExpired(final Mortgage m);
    void offerExpired(MortgageOffer offer);
    void offerAccepted(MortgageOffer offer);
}
